package com.amsp.oa.oademo.service;

import com.amsp.oa.oademo.entity.CardExceptionRecord;
import com.amsp.oa.oademo.vo.CardExceptionRecordVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface CardExceptionRecordService extends IService<CardExceptionRecord> {
    /**
     * 保存或更新刷卡异常记录
     *
     * @param vo 刷卡异常记录VO
     * @return 是否成功
     */
    boolean saveOrUpdateCardExceptionRecord(CardExceptionRecordVO vo);

    /**
     * 批量保存或更新刷卡异常记录
     *
     * @param voList 刷卡异常记录VO列表
     * @return 是否成功
     */
    boolean batchSaveOrUpdateCardExceptionRecord(List<CardExceptionRecordVO> voList);

    /**
     * 获取刷卡异常记录详情
     *
     * @param id ID
     * @return 刷卡异常记录VO
     */
    CardExceptionRecordVO getCardExceptionRecordDetail(Long id);

    /**
     * 分页查询刷卡异常记录
     *
     * @param page 分页参数
     * @param vo   查询条件
     * @return 分页结果
     */
    Page<CardExceptionRecordVO> getCardExceptionRecordPage(Page<CardExceptionRecord> page, CardExceptionRecordVO vo);

    /**
     * 删除刷卡异常记录
     *
     * @param id ID
     * @return 是否成功
     */
    boolean deleteCardExceptionRecord(Long id);

    /**
     * 批量删除刷卡异常记录
     *
     * @param ids ID列表
     * @return 是否成功
     */
    boolean batchDeleteCardExceptionRecord(List<Long> ids);
}